package com.sleepfish.activiti.domain;

import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.extension.handlers.JacksonTypeHandler;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.*;
import lombok.experimental.Accessors;

import java.util.List;

/**
 * <p>
 * Bpm 流程定义的拓展表

 * </p>
 *
 * @author xiaochao
 * @since 2022-03-12
 */
@Data
@EqualsAndHashCode(callSuper = true)
@Accessors(chain = true)
@Builder
@ToString(callSuper = true)
@TableName(value = "bpm_process_definition_ext",autoResultMap = true)
@ApiModel(value="BpmProcessDefinitionExt对象", description="Bpm 流程定义的拓展表 ")
@NoArgsConstructor
@AllArgsConstructor
public class BpmProcessDefinitionExt extends BaseDO {

    private static final long serialVersionUID = 1L;

    @ApiModelProperty(value = "编号")
    @TableId(value = "id", type = IdType.AUTO)
    private Long id;

    @ApiModelProperty(value = "流程定义的编号")
    @TableField("process_definition_id")
    private String processDefinitionId;

    @ApiModelProperty(value = "流程模型的编号")
    @TableField("model_id")
    private String modelId;

    @ApiModelProperty(value = "描述")
    private String description;

    @ApiModelProperty(value = "表单类型")
    @TableField("form_type")
    private Integer formType;

    @ApiModelProperty(value = "表单编号")
    @TableField("form_id")
    private Long formId;

    @ApiModelProperty(value = "表单的配置")
    @TableField("form_conf")
    private String formConf;

    @ApiModelProperty(value = "表单项的数组")
    @TableField(value = "form_fields",typeHandler = JacksonTypeHandler.class)
    private List<String> formFields;

    @ApiModelProperty(value = "自定义表单的提交路径")
    @TableField("form_custom_create_path")
    private String formCustomCreatePath;

    @ApiModelProperty(value = "自定义表单的查看路径")
    @TableField("form_custom_view_path")
    private String formCustomViewPath;




}
